Skip to content

feat(tui): the whisper figure, the arced mist, the sampled palette [spec 10] - #113

Merged
wine-fall merged 1 commit into
mainfrom
zachg-0807--tui-whisper-figure
Aug 7, 2026
Merged

feat(tui): the whisper figure, the arced mist, the sampled palette [spec 10]#113
wine-fall merged 1 commit into
mainfrom
zachg-0807--tui-whisper-figure

Conversation

@wine-fall

Copy link
Copy Markdown
Owner

Implements specs/spec10/10-tui.md §6.1 — the first by-eye feedback round on the quiet-constellation skin (PR #112), folded back into the sky panel.

What changed

The user reviewed the shipped skin against the concept mockup and named three gaps: the pet should be the murmur logo and finer, the spectrum should be arc-shaped with finer grain, and the colors were off. All three land here, engine/wire untouched:

  • The pet is the logo now. The whisper figure in profile (from assets/murmur-logo.svg), authored as 18×20 px sprites in the solid-fill cross-stitch reading — hair as the dim accent mass, skin as the bright mass, dark seams carrying the closed eye, the mouth, and the finger gaps. Whisper sparkles and drifting notes are the pose overlays (idle/talk/music/doze/wake all re-authored).
  • The mist floor is an arc. High at the panel's edges, dipping at the center, the figure floating in the hollow; every dot jittered a few sub-rows so braille cells stay isolated single dots (the fine-grain look), the mist fading out before it can hit the panel's side walls, a sparse fallout drifting under the floor.
  • The palette is sampled, not guessed. Dominant-color histogram over the 04 concept mockup: darker, bluer near-black ground (#0a0d15), warm cream-taupe accents replacing the sage drift; all four scenes recentred on that family.
  • Bug found by review, fixed with a lock: hash01's final XOR fell back to signed 32-bit, so half of all rolls were negative and passed any density threshold — every density knob was silently running at ~2× its stated value. Forced unsigned, densities recalibrated to the corrected dice, and a regression test pins the 0..1 range.

Verification

  • Full gate green: 662 passed (2 new: the arc-floor shape assertion, the hash01 range lock), typecheck + oxlint clean.
  • Visual loop against 04-quiet-constellation.png at every step (sprite close-up + full-composition render through the real modules), three tuning rounds: solid-fill sprite style, figure sizing 24→18 px, density recalibration after the hash fix.
  • Real-boundary smoke (STUB brain, real pty, 130×38): sky panel paints (8190 star glyphs, 245 pet half-blocks), no crashes, clean teardown.

Peer review (codex gpt-5.5 xhigh): 1 finding, 1 applied — the signed-hash defect above, confirmed genuine and fixed in the same change.

Remaining taste knobs (mist density/arc, star density, twinkle, figure placement, per-scene accents) stay issue #79, judged in a real terminal.

AI coding brief

Original request: After seeing the shipped quiet-constellation skin in a real terminal, the user pointed at the right panel with a screenshot: the pet should be finer and shaped like the murmur logo, the soundwave should be arc-shaped with smaller pixels, and the color family was off from the concept.

Manual interventions: The whole round IS the intervention — a screenshot-anchored critique of the previous PR. The standing rule from that session ("compare against the mockup, don't free-style the UI") drove the render-compare-tune loop used throughout.

Retro: Sampling the mockup's palette programmatically (histogram) beat eyeballing it — the first shipped palette was a guess and missed. Rasterizing the actual logo asset as the sprite's base beat drawing from imagination. The signed-hash bug shows why the peer review pass earns its place even on "visual" PRs.

🤖 Generated with Claude Code

…pec 10]

First by-eye feedback on the quiet-constellation skin, folded back in:

- the pet is now murmur's logo — the whisper figure in profile, solid-fill
  cross-stitch reading (hair mass, skin mass, dark seams for the closed
  eye, mouth, and finger gaps), 18x20 px with sparkle/note pose overlays
- the mist floor bows into an arc: high at the edges, dipping at the
  center, the figure floating in the hollow; dots jittered so cells stay
  fine-grained, and the mist fades before the panel's side walls
- palette re-sampled from the 04 concept mockup: darker bluer ground,
  warm cream accents in place of the sage drift
- fix: hash01's final XOR fell back to signed 32-bit, so half of all
  rolls were negative and passed any density threshold — every knob was
  running at ~2x its stated density; regression test locks the range

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@wine-fall
wine-fall merged commit 4fa4ae6 into main Aug 7, 2026
3 checks passed
@wine-fall
wine-fall deleted the zachg-0807--tui-whisper-figure branch August 7, 2026 08:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant